#ifndef __MAIN_H__
#define __MAIN_H__

#include "esp_err.h"
//
#include "./GDEQ0426T82/EPD_W21.h"
#include "./SDCard/SDCard.h"


extern char TmpFilePath[FILE_PATH_LEN_MAX];


//定义处理函数的形式(具体实现在各自.c中)
//---与EPD_W21.c中函数对应
typedef esp_err_t (*Func_SetImgData_t)(uint8_t);
typedef void (*Func_FullDisplay_t)(void);
typedef void (*Func_ResetImgIndex_t)(void);
//---与SDCard.c中函数对应
typedef void (*Func_SDCardTest_t)(void);

//来自WebServer.c的变量(用于接收函数名)
extern Func_SetImgData_t handler_ePaperSetData;
extern Func_FullDisplay_t handler_ePaperDisplay;
extern Func_ResetImgIndex_t handler_ePaperResetIdx;
extern Func_SDCardTest_t handler_SDCardTest;

//======================== Function Declear
int8_t Save_GuiImg_to_File(char *file_path); //将GUI保存到文件
int8_t Load_GuiImg_from_File(char *file_path); //从文件加载GUI
void Update_GuiImg_from_List(); //用SDCard读取文件列表刷新GUI
int8_t Update_GuiImg_to_Select(int8_t step);
int8_t Save_PhotoImg_to_File();
int8_t Load_PhotoImg_from_File(void);
int8_t Delete_PhotoImg_from_SDCard();

#endif
